* Step 1: Bounds WORST_CASE(?,O(n^1)) + Considered Problem: - Strict TRS: U101(mark(X1),X2,X3) -> mark(U101(X1,X2,X3)) U101(ok(X1),ok(X2),ok(X3)) -> ok(U101(X1,X2,X3)) U11(mark(X1),X2,X3) -> mark(U11(X1,X2,X3)) U11(ok(X1),ok(X2),ok(X3)) -> ok(U11(X1,X2,X3)) U21(mark(X1),X2) -> mark(U21(X1,X2)) U21(ok(X1),ok(X2)) -> ok(U21(X1,X2)) U31(mark(X1),X2) -> mark(U31(X1,X2)) U31(ok(X1),ok(X2)) -> ok(U31(X1,X2)) U41(mark(X1),X2) -> mark(U41(X1,X2)) U41(ok(X1),ok(X2)) -> ok(U41(X1,X2)) U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3)) U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3)) U61(mark(X1),X2) -> mark(U61(X1,X2)) U61(ok(X1),ok(X2)) -> ok(U61(X1,X2)) U71(mark(X1),X2) -> mark(U71(X1,X2)) U71(ok(X1),ok(X2)) -> ok(U71(X1,X2)) U81(mark(X1),X2,X3,X4) -> mark(U81(X1,X2,X3,X4)) U81(ok(X1),ok(X2),ok(X3),ok(X4)) -> ok(U81(X1,X2,X3,X4)) U82(mark(X1),X2) -> mark(U82(X1,X2)) U82(ok(X1),ok(X2)) -> ok(U82(X1,X2)) U91(mark(X1),X2) -> mark(U91(X1,X2)) U91(ok(X1),ok(X2)) -> ok(U91(X1,X2)) afterNth(X1,mark(X2)) -> mark(afterNth(X1,X2)) afterNth(mark(X1),X2) -> mark(afterNth(X1,X2)) afterNth(ok(X1),ok(X2)) -> ok(afterNth(X1,X2)) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) cons(mark(X1),X2) -> mark(cons(X1,X2)) cons(ok(X1),ok(X2)) -> ok(cons(X1,X2)) fst(mark(X)) -> mark(fst(X)) fst(ok(X)) -> ok(fst(X)) head(mark(X)) -> mark(head(X)) head(ok(X)) -> ok(head(X)) isLNat(ok(X)) -> ok(isLNat(X)) isNatural(ok(X)) -> ok(isNatural(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) natsFrom(mark(X)) -> mark(natsFrom(X)) natsFrom(ok(X)) -> ok(natsFrom(X)) pair(X1,mark(X2)) -> mark(pair(X1,X2)) pair(mark(X1),X2) -> mark(pair(X1,X2)) pair(ok(X1),ok(X2)) -> ok(pair(X1,X2)) proper(0()) -> ok(0()) proper(nil()) -> ok(nil()) proper(tt()) -> ok(tt()) s(mark(X)) -> mark(s(X)) s(ok(X)) -> ok(s(X)) sel(X1,mark(X2)) -> mark(sel(X1,X2)) sel(mark(X1),X2) -> mark(sel(X1,X2)) sel(ok(X1),ok(X2)) -> ok(sel(X1,X2)) snd(mark(X)) -> mark(snd(X)) snd(ok(X)) -> ok(snd(X)) splitAt(X1,mark(X2)) -> mark(splitAt(X1,X2)) splitAt(mark(X1),X2) -> mark(splitAt(X1,X2)) splitAt(ok(X1),ok(X2)) -> ok(splitAt(X1,X2)) tail(mark(X)) -> mark(tail(X)) tail(ok(X)) -> ok(tail(X)) take(X1,mark(X2)) -> mark(take(X1,X2)) take(mark(X1),X2) -> mark(take(X1,X2)) take(ok(X1),ok(X2)) -> ok(take(X1,X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) - Signature: {U101/3,U11/3,U21/2,U31/2,U41/2,U51/3,U61/2,U71/2,U81/4,U82/2,U91/2,afterNth/2,and/2,cons/2,fst/1,head/1 ,isLNat/1,isNatural/1,isPLNat/1,natsFrom/1,pair/2,proper/1,s/1,sel/2,snd/1,splitAt/2,tail/1,take/2 ,top/1} / {0/0,active/1,mark/1,nil/0,ok/1,tt/0} - Obligation: innermost runtime complexity wrt. defined symbols {U101,U11,U21,U31,U41,U51,U61,U71,U81,U82,U91,afterNth,and ,cons,fst,head,isLNat,isNatural,isPLNat,natsFrom,pair,proper,s,sel,snd,splitAt,tail,take ,top} and constructors {0,active,mark,nil,ok,tt} + Applied Processor: Bounds {initialAutomaton = minimal, enrichment = match} + Details: The problem is match-bounded by 2. The enriched problem is compatible with follwoing automaton. 0_0() -> 2 0_1() -> 3 U101_0(2,2,2) -> 1 U101_1(2,2,2) -> 3 U11_0(2,2,2) -> 1 U11_1(2,2,2) -> 3 U21_0(2,2) -> 1 U21_1(2,2) -> 3 U31_0(2,2) -> 1 U31_1(2,2) -> 3 U41_0(2,2) -> 1 U41_1(2,2) -> 3 U51_0(2,2,2) -> 1 U51_1(2,2,2) -> 3 U61_0(2,2) -> 1 U61_1(2,2) -> 3 U71_0(2,2) -> 1 U71_1(2,2) -> 3 U81_0(2,2,2,2) -> 1 U81_1(2,2,2,2) -> 3 U82_0(2,2) -> 1 U82_1(2,2) -> 3 U91_0(2,2) -> 1 U91_1(2,2) -> 3 active_0(2) -> 2 active_1(2) -> 4 active_2(3) -> 5 afterNth_0(2,2) -> 1 afterNth_1(2,2) -> 3 and_0(2,2) -> 1 and_1(2,2) -> 3 cons_0(2,2) -> 1 cons_1(2,2) -> 3 fst_0(2) -> 1 fst_1(2) -> 3 head_0(2) -> 1 head_1(2) -> 3 isLNat_0(2) -> 1 isLNat_1(2) -> 3 isNatural_0(2) -> 1 isNatural_1(2) -> 3 isPLNat_0(2) -> 1 isPLNat_1(2) -> 3 mark_0(2) -> 2 mark_1(3) -> 1 mark_1(3) -> 3 natsFrom_0(2) -> 1 natsFrom_1(2) -> 3 nil_0() -> 2 nil_1() -> 3 ok_0(2) -> 2 ok_1(3) -> 1 ok_1(3) -> 3 ok_1(3) -> 4 pair_0(2,2) -> 1 pair_1(2,2) -> 3 proper_0(2) -> 1 proper_1(2) -> 4 s_0(2) -> 1 s_1(2) -> 3 sel_0(2,2) -> 1 sel_1(2,2) -> 3 snd_0(2) -> 1 snd_1(2) -> 3 splitAt_0(2,2) -> 1 splitAt_1(2,2) -> 3 tail_0(2) -> 1 tail_1(2) -> 3 take_0(2,2) -> 1 take_1(2,2) -> 3 top_0(2) -> 1 top_1(4) -> 1 top_2(5) -> 1 tt_0() -> 2 tt_1() -> 3 * Step 2: EmptyProcessor WORST_CASE(?,O(1)) + Considered Problem: - Weak TRS: U101(mark(X1),X2,X3) -> mark(U101(X1,X2,X3)) U101(ok(X1),ok(X2),ok(X3)) -> ok(U101(X1,X2,X3)) U11(mark(X1),X2,X3) -> mark(U11(X1,X2,X3)) U11(ok(X1),ok(X2),ok(X3)) -> ok(U11(X1,X2,X3)) U21(mark(X1),X2) -> mark(U21(X1,X2)) U21(ok(X1),ok(X2)) -> ok(U21(X1,X2)) U31(mark(X1),X2) -> mark(U31(X1,X2)) U31(ok(X1),ok(X2)) -> ok(U31(X1,X2)) U41(mark(X1),X2) -> mark(U41(X1,X2)) U41(ok(X1),ok(X2)) -> ok(U41(X1,X2)) U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3)) U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3)) U61(mark(X1),X2) -> mark(U61(X1,X2)) U61(ok(X1),ok(X2)) -> ok(U61(X1,X2)) U71(mark(X1),X2) -> mark(U71(X1,X2)) U71(ok(X1),ok(X2)) -> ok(U71(X1,X2)) U81(mark(X1),X2,X3,X4) -> mark(U81(X1,X2,X3,X4)) U81(ok(X1),ok(X2),ok(X3),ok(X4)) -> ok(U81(X1,X2,X3,X4)) U82(mark(X1),X2) -> mark(U82(X1,X2)) U82(ok(X1),ok(X2)) -> ok(U82(X1,X2)) U91(mark(X1),X2) -> mark(U91(X1,X2)) U91(ok(X1),ok(X2)) -> ok(U91(X1,X2)) afterNth(X1,mark(X2)) -> mark(afterNth(X1,X2)) afterNth(mark(X1),X2) -> mark(afterNth(X1,X2)) afterNth(ok(X1),ok(X2)) -> ok(afterNth(X1,X2)) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) cons(mark(X1),X2) -> mark(cons(X1,X2)) cons(ok(X1),ok(X2)) -> ok(cons(X1,X2)) fst(mark(X)) -> mark(fst(X)) fst(ok(X)) -> ok(fst(X)) head(mark(X)) -> mark(head(X)) head(ok(X)) -> ok(head(X)) isLNat(ok(X)) -> ok(isLNat(X)) isNatural(ok(X)) -> ok(isNatural(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) natsFrom(mark(X)) -> mark(natsFrom(X)) natsFrom(ok(X)) -> ok(natsFrom(X)) pair(X1,mark(X2)) -> mark(pair(X1,X2)) pair(mark(X1),X2) -> mark(pair(X1,X2)) pair(ok(X1),ok(X2)) -> ok(pair(X1,X2)) proper(0()) -> ok(0()) proper(nil()) -> ok(nil()) proper(tt()) -> ok(tt()) s(mark(X)) -> mark(s(X)) s(ok(X)) -> ok(s(X)) sel(X1,mark(X2)) -> mark(sel(X1,X2)) sel(mark(X1),X2) -> mark(sel(X1,X2)) sel(ok(X1),ok(X2)) -> ok(sel(X1,X2)) snd(mark(X)) -> mark(snd(X)) snd(ok(X)) -> ok(snd(X)) splitAt(X1,mark(X2)) -> mark(splitAt(X1,X2)) splitAt(mark(X1),X2) -> mark(splitAt(X1,X2)) splitAt(ok(X1),ok(X2)) -> ok(splitAt(X1,X2)) tail(mark(X)) -> mark(tail(X)) tail(ok(X)) -> ok(tail(X)) take(X1,mark(X2)) -> mark(take(X1,X2)) take(mark(X1),X2) -> mark(take(X1,X2)) take(ok(X1),ok(X2)) -> ok(take(X1,X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) - Signature: {U101/3,U11/3,U21/2,U31/2,U41/2,U51/3,U61/2,U71/2,U81/4,U82/2,U91/2,afterNth/2,and/2,cons/2,fst/1,head/1 ,isLNat/1,isNatural/1,isPLNat/1,natsFrom/1,pair/2,proper/1,s/1,sel/2,snd/1,splitAt/2,tail/1,take/2 ,top/1} / {0/0,active/1,mark/1,nil/0,ok/1,tt/0} - Obligation: innermost runtime complexity wrt. defined symbols {U101,U11,U21,U31,U41,U51,U61,U71,U81,U82,U91,afterNth,and ,cons,fst,head,isLNat,isNatural,isPLNat,natsFrom,pair,proper,s,sel,snd,splitAt,tail,take ,top} and constructors {0,active,mark,nil,ok,tt} + Applied Processor: EmptyProcessor + Details: The problem is already closed. The intended complexity is O(1). WORST_CASE(?,O(n^1))